package com.htgd.gardenexpo.vo;

import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.htgd.gardenexpo.entity.GeConCompetitionGroup;
import com.htgd.gardenexpo.entity.GeConCompetitionPrize;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.List;

@Data
public class GeConCompetitionSportsVO {

    @ApiModelProperty(value = "id")
    private String id;

    @ApiModelProperty(value = "赛事名称")
    private String name;

    @ApiModelProperty(value = "标签")
    private String lable;

    @ApiModelProperty(value = "赛事线路id")
    private String routeId;

    @ApiModelProperty(value = "赛事线路名称")
    private String routeName;

    @ApiModelProperty(value = "赛事线路图片")
    private String routeImg;

    @ApiModelProperty(value = "绑定方式（1手环，2人脸）")
    private String binding;

    @ApiModelProperty(value = "开始时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private LocalDateTime startTime;

    private Long start;

    @ApiModelProperty(value = "结束时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private LocalDateTime endTime;

    private Long end;

    @ApiModelProperty(value = "赛事类型")
    private String type;

    @ApiModelProperty(value = "组别")
    private Integer group;

    @ApiModelProperty(value = "活动状态")
    private String active;

    @ApiModelProperty(value = "是否置顶")
    private Integer isTop;

    @ApiModelProperty(value = "审批状态")
    private Integer status;

    @ApiModelProperty(value = "创建时间")
    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private LocalDateTime createTime;

    @ApiModelProperty(value = "修改时间")
    @TableField(fill = FieldFill.UPDATE)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private LocalDateTime updateTime;

    @ApiModelProperty(value = "分组对象列表")
    private List<GeConCompetitionGroup> groups;

    @ApiModelProperty(value = "状态文本")
    private String statusText;

    @ApiModelProperty(value = "置顶文本")
    private String isTopText;

    @ApiModelProperty(value = "达成类型本文")
    private String typeText;

    @ApiModelProperty(value = "活动状态本文")
    private String activeText;

    @ApiModelProperty(value = "热门本文")
    private String hotText;

    @ApiModelProperty(value = "是否报名('1':已报名，'2':未报名)")
    private String signUp;

    @ApiModelProperty(value = "报名本文")
    private String signUpText;

    @ApiModelProperty(value = "报名id")
    private String enrollId;

    @ApiModelProperty(value = "绑定状态（1绑定，0未绑定）")
    private String bindingStatus;

    @ApiModelProperty(value = "绑定状态文本")
    private String bindingStatusText;

    @ApiModelProperty(value = "主图")
    private String mainImage;

    @ApiModelProperty(value = "地点")
    private String place;

    @ApiModelProperty(value = "竞赛规程")
    private String playDescribe;

    @ApiModelProperty(value = "报名须知")
    private String notes;

    @ApiModelProperty(value = "比赛声明")
    private String details;

    @ApiModelProperty(value = "赛事简介")
    private String introduction;

    @ApiModelProperty(value = "热门状态（'0':不热门，'1':热门）")
    private String hot;

    @ApiModelProperty(value = "组名")
    private String groupName;

    @ApiModelProperty(value = "已报名总人数")
    private Long num;

    @ApiModelProperty(value = "已报人头像")
    private List<String> images;

    @ApiModelProperty(value = "排行榜")
    private List<GroupVO> rankingList;

    @ApiModelProperty(value = "报名开始时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private LocalDateTime startDate;

    @ApiModelProperty(value = "报名结束时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private LocalDateTime endDate;

    @ApiModelProperty(value = "系统当前时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private LocalDateTime now;

    @ApiModelProperty(value = "天气")
    private JSONObject weather;

    @ApiModelProperty(value = "浏览量")
    private int hit;
}
